Developer Documentation

QuickTime 4 API Documentation

QuickTime 4 Reference

QTAtomContainer-Based Data Structure Descriptions

QTAtomContainer-based data structures are widely used in QuickTime. This appendix is an attempt at standardizing how these data structures are be described and documented. The key presented here is used when describing these structures elsewhere in the QuickTime documentation.

More Information on Atoms, QT Atoms, and QT Atom Containers

QTAtomContainer Description Key

[(QTAtomFormatName)] =
    atomType_1, id, index
        data
    atomType_n, id, index
        data

The atoms may be required or optional:

<atomType>optional atom
atomTyperequired atom

The atom ID may be a number if it is required to be a constant, or may be a list of valid atom IDs, indicating that multiple atoms of this type are allowed.

3               one atom with id of 3
(1..3)          three atoms with ids of 1, 2, and 3
(1, 5, 7)       three atoms with ids of 1, 5, and 7
(anyUniqueIDs)  multiple atoms each with a unique id

The atom index may be a 1 if only one atom of this type is allowed, or it may be a range from one to some constant or variable.

1               one atom of this type is allowed, index is always 1
(1..3)          three atoms with indicies 1, 2, and 3
(1..numAtoms)   numAtoms atoms with indicies of 1 to numAtoms

The data may be leaf data in which its data type is listed inside of brackets [], or may be a nested tree of atoms

[theDataType]   leaf data of type theDataType
childAtomsa      nested tree of atoms

Nested QT atom format definitions [( AtomFormatName )] may appear in a definition.


© 1999 Apple Computer, Inc.